"use strict";
/**
 * @name ping
 * 心跳
 */

/**
 * @name /
 * 心跳
 */
module.exports = async function () {
    // let redis = this.model.redis("online");
    // redis.set(this.sid, this.uid);
    // this.updater.role.set('lastTime', this.updater.time);
    // await this.updater.save();
    // let i = 0;
    // while (i < 10) {
    //     console.log("等待ing", Date.now());
    //     i++;
    //     //做轮询操作，主动推送类
    //     //邮件,好友申请，好友点赞，好友送礼，
    //     await sleep();
    // }
    // console.log("等待结束", Date.now());
    // return 'ok';
    // let redis = this.model.redis("online");
    // redis.set(this.sid, this.uid);
    // this.updater.role.set('lastTime', this.updater.time);
    // return this.updater.save();
    try {
        let redis = this.model.redis("online");
        redis.set(this.sid, this.uid);
        this.updater.role.set('lastTime', this.updater.time);
        return this.updater.save();
    } catch (error) {
        console.log("ping err:", error);
        // 处理 Promise 的拒绝
        return this.quick_error('M2saghge140', '心跳出现错误');
    }

};

async function sleep(t = 1000) {
    return new Promise(res => {
        setTimeout(() => {
            res();
        }, t)
    })
}
//建立socketio链接
//保持等待
//有事件后返回  事件在此时间内较为频繁
//区分心跳场景
//接口区分或参数区分

